<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.microsoft.com/microsoft-multi-channel-commerce-foundation/types/2008/03" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/microsoft-multi-channel-commerce-foundation/types/2008/03" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="CommerceRelationship">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:CommerceEntity">
        <xs:sequence>
          <xs:element minOccurs="0" name="Target" nillable="true" type="tns:CommerceEntity" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="CommerceRelationship" nillable="true" type="tns:CommerceRelationship" />
  <xs:complexType name="CommerceEntity">
    <xs:sequence>
      <xs:element name="ModelName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Properties" nillable="true" type="tns:ArrayOfCommercePropertyItem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CommerceEntity" nillable="true" type="tns:CommerceEntity" />
  <xs:complexType name="ArrayOfCommercePropertyItem">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CommercePropertyItem" nillable="true" type="tns:CommercePropertyItem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCommercePropertyItem" nillable="true" type="tns:ArrayOfCommercePropertyItem" />
  <xs:complexType name="CommercePropertyItem">
    <xs:sequence>
      <xs:element minOccurs="0" name="Key" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Value" nillable="true" type="xs:anyType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CommercePropertyItem" nillable="true" type="tns:CommercePropertyItem" />
  <xs:complexType name="CommerceRelationshipList">
    <xs:sequence>
      <xs:element minOccurs="0" name="FirstItemIndex" type="xs:int" />
      <xs:element minOccurs="0" name="TotalItemCount" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Relationships" nillable="true" type="tns:ArrayOfCommerceRelationship" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CommerceRelationshipList" nillable="true" type="tns:CommerceRelationshipList" />
  <xs:complexType name="ArrayOfCommerceRelationship">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CommerceRelationship" nillable="true" type="tns:CommerceRelationship" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCommerceRelationship" nillable="true" type="tns:ArrayOfCommerceRelationship" />
  <xs:simpleType name="SortDirection">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Default" />
      <xs:enumeration value="Ascending" />
      <xs:enumeration value="Descending" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SortDirection" nillable="true" type="tns:SortDirection" />
</xs:schema>